home *** CD-ROM | disk | FTP | other *** search
/ Floppyshop 2 / Floppyshop - 2.zip / Floppyshop - 2.iso / diskmags / 4671-5.790 / dmg-5160 / stosser / bitsbats.doc / bitsbats.doc
Text File  |  1995-03-16  |  11KB  |  265 lines

  1.  
  2. #*~d
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.         ( Felt like writing an article but didn't know what about )
  10.                     By Tony Greenwood for STOSSER
  11.  
  12.  
  13.    There are a couple of ACBs about that are supposed to help you find out
  14.    what sort of a crash you have had. Lets say your routine stops suddenly
  15.    and gives you an "error 84 in line 1000" or any other error message, or
  16.    you have made an error trap that prints the ERRN and ERRL (Error number
  17.    and Error line?) What do you do, well the ACB's in question allow you to
  18.    input a number and the actual error message will be printed to the screen
  19.    for you. In this example it would be "Extension not present." Well for a
  20.    long time I personally used the manual and simply looked up the number to
  21.    see what the problem was, this itself was a pain because the numbers are
  22.    not in order, the messages are, but that's useless when the only info you
  23.    have is the number.
  24.  
  25.    Now there are some clever clogs out there that know what I am getting at
  26.    here, but there are those that will be doing as I used to or using an
  27.    ACB, but for exactly the same results all you have to do is type "ERROR"
  28.    followed by the error number. So if you do get error 84 then type error
  29.    84 and the same message that's in the manual will appear, or for even
  30.    simpler results try "PRINT ERROR ERRN"
  31.  
  32.    [Ahem.. Erm.. Nice one. Why the &^*$% didn't I think of that? Bob.]
  33.  
  34. #*~e
  35.  
  36.  
  37.  
  38.  
  39.  
  40.    Why not use a pencil to mark your floppy disk labels? I get sent quite a
  41.    few disks through the post and they nearly all have some sort of writing
  42.    on them. If I want to re use the disk then I have to relabel it, or if
  43.    its already been relabeled then I have to peel the label off. The same
  44.    goes for any re-using of disks, but if a pencil had been used in the
  45.    first place then all we have to do is use an eraser (without being too
  46.    aggressive to the floppy) and erase the title and use a pencil on it
  47.    again, the simplest ideas are the best!!
  48.  
  49. #*~e
  50.  
  51.  
  52.  
  53.  
  54.  
  55.    Mineralised methylated spirits plus some cotton buds, that's all you need
  56.    to bring your mouse back to life. You probably don't even realise it
  57.    needs it, follow these easy instructions and I can practically guarantee
  58.    you will notice the difference, especially in the speed.
  59.  
  60.    Turn your mouse over, in the centre you will find the actual ball and you
  61.    will find a cover, this (in all the ones I have ever seen) has printed on
  62.    it how to open it. It's just a case of turning it (or sliding it), the
  63.    only loose thing in there is the ball, so don't be afraid to open it up.
  64.    Now look inside and you will see that there are three small steel runners
  65.    set in a triangular pattern, i.e. 3 evenly spaced, just dip your cotton
  66.    bud into the meths and clean the silver bits, just place the bud on the
  67.    ball, press on and draw back towards you, this will clean that bit and
  68.    turn the runner so you can clean the next bit. Do that with all three
  69.    then replace the ball and watch that mouse go.
  70.  
  71.    The first actual wipe you do on the first roller - STOP! Look at the bud
  72.    before continuing, if its been ages since its been cleaned then the
  73.    chances are that it's black and you need to use another bud or something.
  74.    Don't rub a dirty cotton bud back on the track.
  75.  
  76.    The meths is actually pretty strong stuff, get a clean bud and dip it in
  77.    the meths and rub your st with it, just watch the dirt that you didn't
  78.    even know was there come off.
  79.  
  80.    [A word of caution just like the big-boys do: Test this on an
  81.    inconspicuous section of your ST - Just in case your ST has a funny case
  82.    and decides to melt! Personally I use TipExx thinner as I never have
  83.    meths. (Well only on special occasions) Bob.]
  84.  
  85. #*~e
  86.  
  87.  
  88.  
  89.  
  90.  
  91.    FASTCOPY the Missing links screencopy command seems to be the fastest. I
  92.    did a time test comparing fastcopy, screencopy, blit and kopy. Then I
  93.    tried fastcopy, blit and kopy using a variable as the source address as
  94.    opposed to start(bank). Altogether it was fastcopy with the variable that
  95.    won, this is for full screen copying of course.
  96.  
  97. #*~e
  98.  
  99.  
  100.  
  101.  
  102.  
  103.    How about the missing links WORLD MAPS, anyone using them? Personally I
  104.    think they are great, but what if you make a very large map for your
  105.    game, it would help if you knew where everything was at a glance. How
  106.    about a smaller version of the map? Well you could use the "WHICH BLOCK
  107.    command to make a scaled down version, what you would need to do is use X
  108.    LIMIT  and Y LIMIT to find the size of the map, then make a double loop
  109.    to find out what every single block is. Something like:
  110.  
  111.    FOR N=0 TO X : FOR NN = 0 TO Y
  112.  
  113.    As you find WHICH BLOCK you would then do something like the following,
  114.  
  115.    W=WHICH BLOCK (START(5),N,NN) : rem presuming map data in bank 5
  116.    IF W=0 THEN SPOT LOGIC,N,NN,0 : rem presumes block 0 was a blank
  117.    IF W>0 THEN SPOT LOGIC,N,NN,1 : rem all other blocks
  118.  
  119.    NEXT NN : NEXT N
  120.  
  121.    The above should (this is done from memory so underline SHOULD) draw out
  122.    a small mono picture of any size map onto the top left of your screen.
  123.    For even better results you can assign all 15 colours to different
  124.    blocks. So lets say there are some switches on your map, these are made
  125.    with block 31 for example, simply add the line
  126.  
  127.    IF W=31 THEN SPOT LOGIC,N,NN,2 : rem different colour for switches
  128.  
  129.    As you are the only one who knows what block= what then only you know
  130.    what IF statements to put in, but it is a handy little routine. Thanks to
  131.    Bob for making the original and drawing my attention to this nifty idea.
  132.  
  133. #*~e
  134.  
  135.  
  136.  
  137.  
  138.  
  139.    Staying with the MISSING LINK for a second (well it is a big part of STOS
  140.    isn't it?) As you will probably know, the BOBS, JOEYS, TILES, WORLD
  141.    BLOCKS etc are all made from sprites, where a sprite bank holds one image
  142.    and is then pre-shifted. The TML equivalents are pre-shifted and
  143.    therefore the banks are multiplied in size by the amount of images
  144.    selected. If you are making a program that uses 1 pixel scrolling or
  145.    similar and all your graphics are saved as 16 images then you are going
  146.    to have very very large files on your disk. There are two ways around
  147.    this problem: The most simple is to pack the banks, they pack down
  148.    remarkably well, I have personally never seen anything shrink so much in
  149.    size, [Fwoar!? Bob.] You could use ATOMIK (given away in an earlier
  150.    STOSSER) and then use the TML's own unpacking routine to unpack them.
  151.    This will save on a lot of disk space, but there is another sneakier way
  152.    that's a little more flexible depending on your program/game.
  153.  
  154.    The actual MAKE utility that converts and pre-shifts everything comes as
  155.    a BASIC file, you should also have it as a .PRG and be able to see the
  156.    speed it converts. well break into the BASIC file and simply copy the
  157.    actual conversion routine. Use it as a sub routine in your game/program,
  158.    then you can have your sprites as normal in bank one, then as your game
  159.    loads it will quickly convert to BOBS or whatever thus NO disk space used
  160.    at all.
  161.  
  162.    One advantage this could have is by doing a check on boot up to see if
  163.    the user has a half meg machine or more (EXTRA extension will do this)
  164.    and then convert your sprites accordingly. I doubt a half meg machine
  165.    could handle a large set of BOBs or world blocks converted to 16 images?
  166.    So users with more than half a meg could have a more enhanced smoother
  167.    scrolling version. The only other way to achieve this would be to have
  168.    two sets of previously converted sprites on disk.
  169.  
  170. #*~e
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.    When naming VARIABLES there are a few obvious restrictions, i.e. using
  178.    commands as variable names, a nice neat coder (not me!) would preferably
  179.    like to name his variables so as to instantly know what they are used
  180.    for. SCORE=0 : this would be nice and neat but not valid because of the
  181.    command OR in the middle, but this would look as good and would work:
  182.  
  183.    SC0RE=0 : just in case you are viewing this with an odd font let me
  184.              explain that I have simply replaced the letter O with a
  185.              numeric 0,
  186.    LIFE=0  : again would not work because of IF, but this would,
  187.    L1FE=0  : I have changed the letter I for the number 1, so you see
  188.              you can
  189.  
  190.    have easy to read variables by replacing key letters with numbers.
  191.  
  192. #*~e
  193.  
  194.  
  195.  
  196.  
  197.  
  198.    Beware of using the HARDKEY command from the missing link extension if
  199.    you are using the mouse at the same time. I had a menu that used the
  200.    mouse to choose things, but also keyboard shortcuts. One of these was ESC
  201.    to quit, it took me a while to figure out why the program kept quitting
  202.    and no error message - it was the mouse movement returning 1 into
  203.    HARDKEY. To see what I mean try the following:
  204.  
  205.    REPEAT : PRINT HARDKEY : UNTIL FALSE
  206.  
  207.    You will need to press CONTROL+C to exit but you will see HARDKEY
  208.    returning numbers when the mouse is moved.
  209.  
  210. #*~e
  211.  
  212.  
  213.  
  214.  
  215.  
  216.    Well, well I am surprised, looks like I am probably a bit slow as well. I
  217.    have had my ST for a while now, and I've just found a shortcut that I
  218.    never knew about. If you open two windows on your desktop having one for
  219.    drive A and the other for either drive B or a ram disk, and you want to
  220.    copy some files across from one window to the other, lets say from window
  221.    A, you would simply highlight the file then drag across. If you wanted
  222.    all the files you can highlight them all by holding the mouse key and
  223.    running it over the files, that's all dandy, but! What if you have a list
  224.    of 7 files for example, and you only want to copy the first, third,
  225.    fourth and seventh? Well I have just found out that you highlight one
  226.    then whilst holding the SHIFT key you can then highlight any others and
  227.    they don't have to be sequential, then just drag them across as normal.
  228.  
  229.    A lot of you will read the above and be wondering why I am stating what
  230.    is blatantly obvious to you, well the reason is that if I have only just
  231.    found this out then there may be others out there that didn't know.
  232.  
  233.    [Just a short bit of general hinty thing; No matter what program you are
  234.    using you should try the SHIFT+MOUSE BUTTON combo, it's surprising how
  235.    many programs use this for multiple object selections e.g. Calamus,
  236.    WINDOWS(!?), EZDraw etc. etc. Bob.]
  237.  
  238. #*~e
  239.  
  240.  
  241.  
  242.  
  243.  
  244.    And that's about it for now, I have to say that its becoming a little
  245.    demoralising writing articles for STOSSER, the problem is not knowing how
  246.    many people are reading it, let alone getting anything out of it. I am
  247.    not asking for people to write and thank us for articles, but do send a
  248.    note to the letters page letting us know if it helps. I am not just
  249.    talking about my bits, it's the other contributers as well who simply
  250.    don't know if their time and effort is actually any use to anyone, just
  251.    let us know if the articles are helping...
  252.  
  253.  
  254.    .........!ynoT
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.